Crowd sourced resources as selectable working units

ABSTRACT

The global proliferation of high speed communication networks has created unprecedented opportunities for geographically distributed resource interaction. A crowd sourced project management synthesizer provides crowd sourced project management features, as well as resource performance tracking features, to provide efficiencies to the project&#39;s implementation.

TECHNICAL FIELD

This application relates to management of crowd sourced projects,including the allocation of a selected cell group of resources forexecuting distinct project tasks included in a complex crowd sourcedproject. This application further relates to communication with, andcontrol over, the geographically distributed resources.

BACKGROUND

The global proliferation of high speed communication networks hascreated unprecedented opportunities for geographically distributedresource interaction. However, while the opportunities exist andcontinue to grow, the realization of those opportunities has fallenbehind, and new technical problems arise from the utilization of thegeographically distributed resources. In part, this is due to thetechnical challenges that arise when connecting the geographicallydistributed resources together as part of a team of crowd sourcedresources in an effective operational environment to accomplish a commonproject.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an example of a global network architecture.

FIG. 2 illustrates an example implementation of a computing resourceincluded in the global network architecture.

FIG. 3 shows an exemplary flow diagram of logic that the architecturemay implement.

FIG. 4 shows another exemplary flow diagram of logic that thearchitecture may implement.

FIG. 5 shows another exemplary flow diagram of logic that thearchitecture may implement.

FIG. 6 shows a view of an example graphical user interface (GUI) of aproject manager.

FIG. 7 shows a view of another example graphical user interface (GUI) ofa project manager.

FIG. 8 shows a view of another example graphical user interface (GUI) ofa project manager.

FIG. 9 shows an exemplary workflow including distinct project tasks,where each project task is assigned to a corresponding resource.

DETAILED DESCRIPTION

With the continued improvements in network capabilities, thetechnological field of crowd sourcing is now applied to many enterpriseprojects. With the new emergence of crowd sourcing resources, newtechnical problems have also emerged that arise from the particularapplication of crowd sourcing resources. The newfound benefits andefficiencies of bringing together geographically remote resources, alsocome with newfound issues arising from allocating remote resources thathave not previously been asked to work together to accomplish a project.For example, crowd sourcing is applicable where project tasks are postedto an online labor market to attract crowd sourced resources withappropriate qualifications. For such crowd sourced projects, resourcesthat are determined to be qualified for the posted project tasks may beautomatically alerted, thus allowing the resources to respond byindicating their interest in the project, and then online tools may helpa project manager select the right combination of resources for theproject tasks. A common problem encountered by project managers of crowdsourced projects occurs during the step of selecting an optimum team ofresources that will work effectively together to accomplish the projectgoals.

To address these new technical challenges arising from the field ofcrown sourced projects, a crowd sourced resource management synthesizer(CSRMS) is provided that generates a collaborative work environmentpermitting the geographically disbursed resources to interactefficiently to successfully accomplish complex projects. To accomplishthese solutions, the CSRMS monitors a performance of specific cellgroups of resources as the cell groups accomplish designated tasks thatmake up a project. A cell is defined as a distinguishable group ofresources that have worked together in the past, or is predicted to worktogether on future projects. The resources in a cell may have frequentlyworked together in the past, and accumulated a known performance leveland/or score for certain defined project tasks. Cells may be combinedwith other individual resources or cells to accomplish larger projects.Cells are typically employed to accomplish tightly-connected chunks ofwork within a project that requires close collaboration within theresources included in the cell. The collaboration requirements betweencells included on a project are assumed to be looser, allowing for cellsthat are unfamiliar with each other to combine chunks of work theyproduce without lots of experience working with the other cells.

The CSRMS further monitors a performance of the cell groups as they handoff their finished tasks to an adjacent (i.e., next) cell of resources.The performance data is used by the CSRMS to identify specific cellgroups of resources that show a proficiency for working well together toefficiently complete distinct project tasks. Certain resources may alsoadvertise themselves as a distinct cell group

The CSRMS further references the performance data to generate projecttemplates for defined projects, where the project templates include apreset distribution of project tasks assigned to preferred cell groupsof resources that are predicted to accomplish the project within anacceptable performance threshold. The project templates may beidentified by one or more project parameters describing projectattributes of the project. Project attributes may include projecttechnology field, project industry field, project name, projectrequirements, target platform on which a product will run, functionalcategories for the project, development methodology for the project, orother definable project attribute. The CSRMS further assigns packagedcell groups of resources to designated project tasks based on one ormore factors such as previous work history of the cell groups onsimilar, or same, project tasks, predicted performance of cell groupswithin the overall team of resources assigned to the project, and anavailability of resources.

Although the exemplary embodiments described herein relate to a crowdsourced project for developing a software-type application, themanagement features described herein are also applicable to crowdsourced projects related to a broader array of projects such as eventplanning and manual enterprise work products such as tax formpreparation, legal analysis, or other process that may be accomplishthrough the use of resources that have been grouped into defined cellsto promote greater efficiencies.

FIGS. 1 and 2 provide an example context for the discussion below of thetechnical solutions in a CSRMS architecture. The examples in FIGS. 1 and2 show one of many possible different implementation contexts. In thatrespect, the technical solutions are not limited in their application tothe architectures and systems shown in FIGS. 1 and 2, but are applicableto many other system implementations, architectures, and connectivity.

FIG. 1 shows a global network architecture 100. Connected through theglobal network architecture 100 are resources, e.g., the cell group ofresources 102, 104, and 106. These resources may be present at manydifferent resource sites globally, and for certain types of resources(e.g., virtualized computing resources) the resource sites are serviceproviders that host the resources. The resource sites and resources maybe located in any geographic region, e.g., United States (US) East, USWest, or Central Europe. Resources may correspond to any element ofproject execution, whether specific individuals (e.g., a GUIprogrammer), hardware resources (e.g., CPU, memory and disk resources),or software resources (e.g., algorithm or function packages, applicationsoftware, operating systems, or database management systems). Inaddition, any of the resources and resource sites may provide resourcedescriptors for the resources. The resource descriptors may include datathat characterizes, defines, or describes the resources. A few examplesof resource descriptors include data specifying abilities, speed,reliability, location, availability, languages, cost, capability,capacity, experience, skill descriptors, historical performance data,and execution capability data. In addition to being geographicallydistributed, resources and resource descriptors may also be presentlocally within an enterprise framework that is carrying out a project.

Throughout the global network architecture 100 are networks, e.g., thenetwork 108. The networks 108 provide connectivity between theresources, resource descriptors, service providers, enterprises, andother globally positioned entities. The networks 108 may include privateand public networks defined over any pre-determined and possibly dynamicinternet protocol (IP) address ranges. The network 108 may berepresentative of one or more networks.

A CSRMS architecture (“architecture”) 110 is hosted at an enterpriselocation 112, or other third-party vendor site, where the architecture110 includes the components (e.g., hardware, software, circuitry) foroperating the CSRMS. The enterprise location 112 acts as a centralizedcontrol point over the processes executed by the CSRMS to carry outproject management over the geographically distributed resources. Theproject may be one that the enterprise itself needs to accomplish,though in other instances the enterprise location 112 may providecentralized control over complex projects for third parties. As will bedescribed in more detail, the CSRMS is executed on the architecture 110to allocate a team of cell groups of resources to a project and monitorthe team's performance during and after completion of the project.

In the global network architecture 100 shown in FIG. 1, the architecture110 includes a team sourcing layer 114, a cell intermingling layer 116,and a project management layer 118. Each of the layers include thehardware, software, and circuitry for implementing the respectivecorresponding features attributed to the layers described herein. Asystem layer 120 coordinates the operation and interactions among theteam sourcing layer 114, the cell intermingling layer 116, and theproject management layer 118. In addition, the system layer 120 drives avisualization layer 122 that renders or outputs, for instance, a set ofgraphical user interfaces (GUIs) including visualizations andpresentation of information that facilitate process execution among theresources, e.g. in HTML form or as digital video signals for drivingdisplays.

The global network architecture 100 also includes a project database 140storing profiles for known individual resources, where the resourceprofiles include at least the respective resource descriptor informationand project work history. The project database 140 also stores profilesfor cell groups of resources managed by the CSRMS. The cell groupprofiles include the resource descriptor information for the resourcesthat are part of the respective cell group, as well as a project workhistory for the cell group. By referencing the distinct cell groups andtheir project work history, the CSRMS may more efficiently predict andassign the cell groups to future projects and project tasks when thecell groups have shown a history of successfully completing similar, orthe same, tasks in their work history.

In some embodiments, certain cell groups may present themselves as apre-packaged team of resources specializing in accomplishing certaintasks. The cell group profiles stored in the project database 140 forsuch pre-packaged cell groups include identification data flagging thepurported specializations. Each cell group profile may identifyresources included in the cell group, as well as past project workhistory and performance of the cell group. The CSRMS then considers suchspecializations when allocating resources during management of a futureproject. Reference to a resource may be understood to be a reference toa singular resource or a cell group of resources.

The project database 140 may also store a library of preset projecttemplates. Each preset project template applies to a specific type ofproject (e.g., creating an email server, or crating an application foranalyzing an electronic insurance claim and determining a reimbursementamount), and includes a list of defined project tasks that comprise aworkflow for accomplishing the specific type of project. In addition,the project template may further include a recommended project taskassignment table that assigns predetermined resources (e.g., apredetermined cell group of resources) to each of the defined projecttasks.

FIG. 9 shows an exemplary workflow 900 that may be included in a projecttemplate. The workflow 900 represents a project including three distinctproject tasks: project task 1, project task 2, and project task 3. Theworkflow 900 further shows a specific cell group of resources assignedto each project task: cell group 102 is assigned to project task 1, cellgroup 104 is assigned to project task 2, and cell group 106 is assignedto project task 3. The workflow 900 also shows a relationship betweenadjacent project tasks in the handoff of completed work product. Forexample, the completed work product from project task 1 is handed off asan input to adjacent project task 2, and the completed work product fromproject task 2 is handed off as an input to adjacent task 3. The handoffrelationships is also a representation of work handed off between therespective adjacent cell group of resources. For example, the completedwork product of cell group 102 (from finishing project task 1) is handedoff to adjacent cell group 104, so that cell group 104 may use thefinished work product from adjacent cell group 102 to complete their ownrespective project task 2.

The global network architecture 100 also includes a project performancedatabase 150 that stores performance data for each resource, and cellgroup of resources, having completed a project task under the CRMS.After completion of a project, performance statistics describing anoverall performance of the resources as they worked through theirassigned project tasks may be calculated by the CRMS and stored on theproject performance database 150. The performance statistics may becalculated by the CRMS for each cell group of resources, as well as forindividual resources. The performance statistics may be in the format ofa score generated based on a number of factors such as a time tocomplete the project task compared against a historical average time tocomplete the same, or similar, project task, a number of defects foundin the completed project task, as well as peer resource evaluations. Inaddition or alternatively, the score may be generated in view ofsoftware efficiency measured by performance metrics, space required,readability of code, or other measurable metric. When the crowd sourcedproject is not related to software application development, the scoremay be generated based on other performance metrics that are measurableto the crowd sourced project. Although both the project database 140 andthe project performance database 150 are shown as two distinctcomponents in the global network architecture 100 shown in FIG. 1,according to some embodiments the project database 140 and the projectperformance database 150 may be part of a single database.

The global network architecture 100 also includes a machine learningengine 130. The machine learning engine 130 is provided with projectmanagement and performance (PMP) data 126 from the CSRMS running on thearchitecture 110. The project management data includes at least the datastored on the project database 140, and the project performance dataincludes at least the data stored on the project performance database150. The machine learning engine 130 may also obtain project managementdata directly from the project database 140, and obtain projectperformance data directly from the project performance database 150. Byanalyzing the project management data and/or the project performancedata, the machine learning engine 130 monitors the progression of aproject that utilizes crowd sourced resources.

The machine learning engine 130 identifies a project by parsing projectprofile data included in the PMP data 126. The project profile data mayinclude a project name, project field/industry, project goal, projectrequirements, project resources (e.g., resources and cell groups thatcomprise the overall project team, virtual machines, and the like),project location, or the like for characterizing a correspondingproject. The machine learning engine 130 may further monitor and trackprogression of the project by identifying each project task comprisingthe project, and tracking an order in which each project task isaccomplished during the duration of the project from the PMP data 126received from the CSRMS.

As the machine learning engine 130 monitors the progression of theproject, the machine learning engine 130 receives specific performancestatistics included in the PMP data 126 that is received by the machinelearning engine 130. The performance statistics may be comprised of aperformance score input by a project manager, fellow project teamresource member, or client. The performance score is applicable to theoverall project team, a cell group of resources included in the projectteam, and/or individual resources utilized during the project.

The performance statistics may further be comprised of an adjacentperformance rating generated by the machine learning engine 130 orCSRMS, where the adjacent performance rating reflects an effectivenessof handing off work product between two adjacent cell groups. Themachine learning engine 130 considers the received PMP data 126, thereceived performance statistics, as well as any other data obtainablefrom the project performance database 150 and the project database 150,to propose updated project templates and resource assignments. Thegenerated updated proposals are stored in the project performancedatabase 140 as revised project templates.

FIG. 2 shows an example implementation of the architecture 110 asimplemented on a computer device 200. The architecture 110 includescommunication interfaces 202, system circuitry 204, input/output (I/O)interface circuitry 206, and display circuitry 208. The visualizationlayer 122 generates the graphical user interfaces (GUIs) 210 locallyusing the display circuitry 208, or for remote visualization, e.g., asHTML, JavaScript, audio, and video output for a web browser running on alocal or remote machine. Among other interface features, the GUIs 210may render interfaces for project task planning, inter-resourcecommunication, requests for resource allocations, execution of tools ina dynamic workspace, and other features of the CSRMS.

The GUIs 210 and the I/O interface circuitry 206 may include touchsensitive displays, voice or facial recognition inputs, buttons,switches, speakers and other user interface elements. Additionalexamples of the I/O interface circuitry 206 includes microphones, videoand still image cameras, headset and microphone input/output jacks,Universal Serial Bus (USB) connectors, memory card slots, and othertypes of inputs. The I/O interface circuitry 206 may further includemagnetic or optical media interfaces (e.g., a CDROM or DVD drive),serial and parallel bus interfaces, and keyboard and mouse interfaces.

The communication interfaces 202 may include wireless transmitters andreceivers (“transceivers”) 212 and any antennas 214 used by the transmitand receive circuitry of the transceivers 212. The transceivers 212 andantennas 214 may support WiFi network communications, for instance,under any version of IEEE 802.11, e.g., 802.11n or 802.11ac. Thecommunication interfaces 202 may also include wireline transceivers 216.The wireline transceivers 216 may provide physical layer interfaces forany of a wide range of communication protocols, such as any type ofEthernet, data over cable service interface specification (DOCSIS),digital subscriber line (DSL), Synchronous Optical Network (SONET), orother protocol.

The system circuitry 204 may include any combination of hardware,software, firmware, or other circuitry. The system circuitry 204 may beimplemented, for example, with one or more systems on a chip (SoC),application specific integrated circuits (ASIC), microprocessors,discrete analog and digital circuits, and other circuitry. The systemcircuitry 204 may implement any desired functionality in thearchitecture 110, including the team sourcing layer 114, the cellintermingling layer 116, and the project management layer 118, thesystem layer 120, and the visualization layer 122. As just one example,the system circuitry 204 may include one or more instruction processors218 and memories 220.

The memories 220 store, for example, control instructions 222 and anoperating system 224. In one implementation, the processor 218 executesthe control instructions 222 and the operating system 224 to carry outany desired functionality for the architecture 110, including thefunctionality described below for the team sourcing layer 114, the cellintermingling layer 116, the project management layer 118, the systemlayer 120, and the visualization layer 122. The control parameters 226provide and specify configuration and operating options for the controlinstructions 222, operating system 224, and other functionality of thearchitecture 110.

The architecture 110 may include a data storage layer 228 that hosts anynumber of local data repositories. In the exemplary computer device 200shown in FIG. 2, the data storage layer 228 includes the projectdatabase 140 and the project performance database 150. Although both theproject database 140 and the project performance database 150 are shownas two distinct components, according to some embodiments the projectdatabase 140 and the project performance database 150 may be part of asingle database.

The control instructions 222 drive the functionality of the architecture110. For example, the control instructions 222 include instructions 230for implementing the features of the CSRMS. The visualization logic 242generates the GUIs 210 to provide interfaces for accomplishing featuresof the CSRMS.

The features of the CSRMS that control operation of the variouscomponents of the computer device 200, as well as the structure andcontent of the generated GUIs 210, improve the functioning of theunderlying computer hardware included in the computer device 200 itself.That is, these features (among others described below) are specificimprovements in the way that the underlying computer device 200operates. The improvements facilitate more efficient, accurate,consistent, and precise execution of complex projects using disparategeographically distributed resources. The improved functioning of theunderlying computer hardware itself achieves further technical benefits.For example, the execution of the CSRMS on the architecture 110increases project task completion efficiency by allocating proven cellgroups of resources to accomplish specific project tasks the cell groupsare predicted to accomplish at a high performance level.

FIG. 3 shows a flow diagram 300 of logic describing an exemplary processfor managing a crowd sourced project by the CSRMS. In oneimplementation, the CSRMS receives a set of project parametersdescribing a project tasked for completion (301). The project parametersmay, for example, be received directly from a client computer, or inputby a project manager resource directly into an input device included inthe architecture 110. The project parameters may include, for example, aproject name, project field/industry, project goal, projectrequirements, project location, or the like for characterizing thecorresponding project.

After receiving the project parameters, the team sourcing layer 114 ofthe CSRMS parses the project database 140 to retrieve a project templateidentified using the information included in the project parameters(302). For example, the project name and/or project field/industryinformation included in the project parameters may be referenced toidentify the project template. The project template includes a workflowcomprised of a number of project tasks for completing the project. Theproject template also includes a mapping of recommended cell groups ofresources for allocating to complete specific project tasks.

The team sourcing layer 114 further parses the project performancedatabase 150 to retrieve project performance data relating to the pastperformance on similar, or the same, projects by the cell groups ofresources identified in the project template (303). In addition to thespecific performance of cell groups and resources, the team sourcinglayer 114 further references the project performance data to determinehow adjacent cell groups identified in the project template have workedtogether in past projects. Specifically, the team sourcing layer 114references the project performance data to determine how the adjacentcell groups have performed when handing off work product betweenthemselves.

The team sourcing layer 114 further determines a first cell group toassign to a first project task included in the project workflow (304).The first cell group may be the recommended cell group identified in theproject template, or another known cell group selected by the teamsourcing layer 114 based on the project performance data or otherconsidered factors (e.g., geographic proximity of adjacent cell groups,availability of resources).

The team sourcing layer 114 further determines a second cell group toassign to a second project task included in the project workflow (305).The second cell group may be the recommended cell group identified inthe project template, or another known cell group selected by the teamsourcing layer 114 based on the project performance data or otherconsidered factors (e.g., geographic proximity of adjacent cell groups).The process for determining a cell group to assign to a project tasksincluded in the project workflow goes on until each project task hasbeen assigned a cell group or resource.

After commencing the project, the project monitoring layer 118 of theCSRMS monitors a performance of the first cell group (306). Theresulting performance statistics generated by the project monitoringlayer 118 is stored, for example, on the project performance database150.

After commencing the project, the project monitoring layer 118 of theCSRMS monitors a performance of the second cell group (307). Theresulting performance statistics generated by the project monitoringlayer 118 is stored, for example, on the project performance database150. The project monitoring layer 118 may monitor each cell groupassigned to complete a project task until the project is determined tobe completed.

The project monitoring layer 118 may also utilize the machine learningengine 130, to identify new cell groups of resources that are acombination of existing resources and cell groups of resources. Thedetermined composition of the new cell groups of resources may be basedon the observed performance of the resources and cell groups ofresources in past and current projects, requests to create new cellgroups received from the resources themselves, and/or a calculated needto create new cell groups to more effectively complete known projecttasks or future project tasks in a work queue. The determinedcomposition of the new cell groups may include new combinations ofresources, or selectively remove, or add, resources to existing cellgroups. The new cell groups may be determined by the project monitoringlayer 118 and/or machine learning engine 130 as performing a distinctproject task above a threshold performance level.

FIG. 4 shows a flow diagram 400 of logic describing another exemplaryprocess for managing a crowd sourced project by the CSRMS. In oneimplementation, the CSRMS receives a set of project parametersdescribing a project tasked for completion (401). The project parametersmay, for example, be received directly from a client computer, or inputby a project manager resource directly into an input device included inthe architecture 110. The project parameters may include, for example, aproject name, project field/industry, project goal, projectrequirements, project location, or the like for characterizing thecorresponding project.

After receiving the project parameters, the team sourcing layer 114 ofthe CSRMS parses the project database 140 in an attempt to identify aproject template using the information included in the projectparameters (402). However, in this embodiment a project template cannotbe identified from the parsing of the project database 140 (403). Thismay indicate that resources under the CSRMS have not previously workedon a similar, or the same, project.

Without a project template describing a project workflow, the teamsourcing layer 114 is responsible for generating a project workflow forthe project that includes a number of distinct project tasks forassigning to cell groups of resources (404). The team sourcing layer 114may rely on project attributes from similar projects to generate theproject workflow. In addition or alternatively, the team sourcing layer114 may receive instructions for generating the project workflow thatcreate each of the project tasks that comprise the project workflow.After generating the project tasks, the team sourcing layer 114 maypresent a notice to the known resources about the available projecttasks that are looking for resource assignments.

The team sourcing layer 114 further parses the project performancedatabase 150 to retrieve project performance data relating to the pastperformance on similar, or the same, projects by the cell groups ofresources identified in the project template (405). In addition to thespecific performance of cell groups and resources, the team sourcinglayer 114 further references the project performance data to determinehow adjacent cell groups identified in the project template have workedtogether in past projects. Specifically, the team sourcing layer 114references the project performance data to determine how the adjacentcell groups have performed when handing off work product betweenthemselves.

The team sourcing layer 114 further determines a first cell group toassign to a first project task included in the project workflow (406).The first cell group may be a known cell group selected by the teamsourcing layer 114 based on the project performance data or otherconsidered factors (e.g., geographic proximity of adjacent cell groups).In addition or alternatively, the team sourcing layer 114 may select thefirst cell group based on responses received from cell groups inresponse to the notice sent out to the known resources. For example, acell group of resources with previous work experience on a similar, orsame, project task as the first project task may have submitted a bid tobe assigned to the first project task.

T The team sourcing layer 114 further determines a second cell group toassign to a second project task included in the project workflow (407).The second cell group may be a known cell group selected by the teamsourcing layer 114 based on the project performance data or otherconsidered factors (e.g., geographic proximity of adjacent cell groups).In addition or alternatively, the team sourcing layer 114 may select thesecond cell group based on responses received from cell groups inresponse to the notice sent out to the known resources. For example, acell group of resources with previous work experience on a similar, orsame, project task as the second project task may have submitted a bidto be assigned to the second project task.

After commencing the project, the project monitoring layer 118 of theCSRMS monitors a performance of the first cell group (408). Theresulting performance statistics generated by the project monitoringlayer 118 is stored, for example, on the project performance database150.

After commencing the project, the project monitoring layer 118 of theCSRMS monitors a performance of the second cell group (409). Theresulting performance statistics generated by the project monitoringlayer 118 is stored, for example, on the project performance database150. The project monitoring layer 118 may monitor each cell groupassigned to complete a project task until the project is determined tobe completed.

FIG. 5 shows a flow diagram 500 of logic describing another exemplaryprocess for managing a crowd sourced project by the CSRMS. In oneimplementation, the process described by flow diagram 500 is implementedby the cell intermingling layer 116 of the CSRMS while finalizingmapping of cell groups of resources to project tasks comprising aproject. After an initial allocation of cell groups have been assignedto their respective project tasks, the cell intermingling layer 116determines a complexity score related to a work handoff between a firstcell group and a second cell group from the initial allocation of cellgroups (501). The exemplary workflow 900 shown in FIG. 9 represents theinitial allocation of cell groups to their assigned project tasks. Sothe complexity score may represent an efficiency of the work handofffrom cell group 102 to cell group 104. The complexity score may be anumber between 0 and 1, where 1 is indicative of a greater complexitywhen exchanging work product between cell group 102 and cell group 104.

The cell intermingling layer 116 further determines a fragility score ofa first cell group (502). So for cell group 102, the fragility score isrepresentative of a negative effect on the cell group 102 if a resourcefrom cell group 102 was transferred (i.e., intermingled) with adjacentcell group 104. The intermingling of resources may be considered by thecell intermingling layer 116 in case a predicted work handoff efficiencybetween the cell group 102 and cell group 104 is lower than a threshold.The fragility score may be a number between 0 and 1, where 1 isindicative of a high fragility.

The cell intermingling layer 116 further compares the complexity scoreto the fragility score (503). When the complexity score is greater thanthe fragility score (504), this indicates a greater need to transfer theresource from cell group 102 to cell group 103 to mitigate the highlevel of complexity between the two cell groups. For example, thetransferred resource from cell group 102 may have previously workedwithin cell group 104, share a common language as cell group 104, sharea close geographical location as cell group 104, or share some otherconnection to cell group 104, thus causing the cell intermingling layer116 to predict the transfer of the resource into cell group 104 willhelp reduce the issues causing the complexity between the two cellgroups.

The cell intermingling layer 116 further references one or moreintermingling rules before determining whether to transfer the resource(505). In this embodiment, the intermingling rule asks whether the firstcell group has previously transferred a resource out for interminglingpurposes. When the current situation passes the intermingling rules,which in this case is the first cell group not having previouslytransferred out a resource, the cell intermingling layer 116 controls orallows for the transfer of the resource from the first cell group 102 tothe adjacent second cell 104 (506). When the intermingling rules are notsatisfied, the cell intermingling layer 116 considers other adjacentcell groups for intermingling (507).

Cell groups that are revised from the intermingling process are updatedby the cell intermingling layer 116 on the project workflow, and theupdated project workflow is stored on the project database 140 as partof the corresponding project template.

FIG. 6 shows an exemplary view of a first management GUI 600 generatedby the CSRMS for managing crowd sourced resources in an insurance claimsreview project. The first management GUI 600 includes a completion tab610 for displaying a list of completed project tasks (not expresslyillustrated). The first management GUI 600 also includes a remaining tab620 (illustrated) that includes a list of remaining project tasks,including Project Task 3 and Project Task 4. Project Task 3 relates toexporting patient insurance claims from an old patient managementenvironment to a new patient management environment. Project Task 3 isdisplayed in a third task field 621, where the third task field 621includes an option to display a list of default recommended resources toassign to Project Task 3, and an option to display a list of otheravailable recommended resources to assign to Project Task 3. The defaultrecommended resources may include cell groups of resources identified ona project template for the project. In addition, the list of otheravailable recommended resources may have also been included on theproject template, or the team sourcing layer 114 may generate the listof other available recommended resources based on a detectedavailability of resources that the team sourcing layer 114 calculatesare qualified to accomplish Project Task 3.

Project Task 4 relates to creating a new portal for receiving thepatient insurance claims within the new patient management environment.Project Task 4 is displayed in a fourth task field 622, where the fourthtask field 622 includes an option to display a list of defaultrecommended resources to assign to Project Task 3, and an option todisplay a list of other available recommended resources to assign toProject Task 3. The default recommended resources may include cellgroups of resources identified on a project template for the project. Inaddition, the list of other available recommended resources may havealso been included on the project template, or the team sourcing layer114 may generate the list of other available recommended resources basedon a detected availability of resources that the team sourcing layer 114calculates are qualified to accomplish Project Task 3. Here, the defaultrecommended resources identify cell group A from the project template.The fourth task field 622 also identifies cell group B as the otheravailable recommended resources.

The fourth task field 622 also includes a task description field 623describing Project Task 4, as well as an estimated task duration timedescribing an estimated amount of time for completing Project Task 4using the default recommended resource, and a scheduled start time forProject Task 4.

FIG. 7 shows an exemplary view of a second management GUI 700 generatedby the CSRMS for managing crowd sourced resources in an insurance claimsreview project by determining when to intermingle resources in adjacentcell groups. The second management GUI 700 includes a workflow tab 710for displaying a list of project tasks that comprise the project. Here,the workflow tab 710 illustrates the project workflow comprising ofthree distinct project tasks: Project Task 1, Project Task 2, andProject Task 3.

Project Task 1 relates to exporting patient insurance claims from an oldpatient management environment to a new patient management environment.Project Task 1 is displayed in a first task field 721, where the firsttask field 721 includes an option to display a list of defaultrecommended resources to assign to Project Task 1, and an option to runan intermingling analysis. The default recommended resources may includecell groups of resources identified on a project template for theproject. When selected, the intermingling option causes the cellintermingling layer 116 to run the intermingling analysis as describedby flow diagram 500.

Project Task 2 relates to creating a new portal for receiving thepatient insurance claims within the new patient management environment.Project Task 2 is displayed in a second task field 722, where the secondtask field 722 includes an option to display a list of defaultrecommended resources to assign to Project Task 2, and an option to runan intermingling analysis. The default recommended resources may includecell groups of resources identified on a project template for theproject, such as cell group A, cell group B, and cell group Cillustrated in the second task field 722. When selected, theintermingling option causes the cell intermingling layer 116 to run theintermingling analysis as described by flow diagram 500.

Project Task 3 relates to presenting insurance claim coverage results toa responsible service provider. Project Task 3 is displayed in a thirdtask field 723, where the third task field 723 includes an option todisplay a list of default recommended resources to assign to ProjectTask 3, and an option to run an intermingling analysis. The defaultrecommended resources may include cell groups of resources identified ona project template for the project, such as cell group D, cell group E,and cell group F illustrated in the third task field 723. When selected,the intermingling option causes the cell intermingling layer 116 to runthe intermingling analysis as described by flow diagram 500. Forexample, the third task field 723 illustrates the intermingling optionhaving been selected, and the cell intermingling layer 116 recommendingthat resource 1 from cell group A transfer into adjacent cell group B.

The workflow tab 710 exemplifies three adjacent project tasks within theproject, where the work product from a preceding project task is inputto the next adjacent project task for the adjacent project task to becompleted by their respective assigned resources. The interminglingoption may be run by the cell intermingling layer 116 based on areceived input command, or automatically for each adjacent cell groupthat is initially assigned to the project tasks.

In other embodiments, the project tasks that comprise the projectworkflow illustrated under the workflow tab 710 may relate to anon-software application development project. For instance, the projectmay be a marketing campaign where a first cell is allocated toaccomplish the high level theme and templates for the marketingcampaign, while another second cell is allocated to various localmarkets or to various media channels.

FIG. 8 shows an exemplary view of a third management GUI 800 generatedby the CSRMS for managing crowd sourced resources in an insurance claimsreview project by monitoring performance of resources and providing anoption to revise a mapping of resources to project tasks. The thirdmanagement GUI 800 includes a performance tab 810 for displaying a listof project tasks that comprise the project. Here, the performance tab810 illustrates the project workflow comprising of three distinctproject tasks: Project Task 1, Project Task 2, and Project Task 3.

Project Task 1 relates to exporting patient insurance claims from an oldpatient management environment to a new patient management environment.Project Task 1 is displayed in a first task field 821, where the firsttask field 821 includes an option to display historical performancestatistics for a cell group currently assigned to complete Project Task1, an option to display predicted performance statistics for a list ofrecommended resources determined by the team sourcing layer 114 to bepotential replacements to assign to Project Task 1, and an option toinput performance rating for the cell group currently assigned toProject Task 1.

Project Task 2 relates to creating a new portal for receiving thepatient insurance claims within the new patient management environment.Project Task 2 is displayed in a second task field 822, where the secondtask field 822 includes an option to display historical performancestatistics for a cell group currently assigned to complete Project Task2, an option to display predicted performance statistics for a list ofrecommended resources determined by the team sourcing layer 114 to bepotential replacements to assign to Project Task 2, and an option toinput performance rating for the cell group currently assigned toProject Task 2. The current cell group assigned to Project Task 2 isshown to be cell group B. The list of recommended resources topotentially replace the current cell group B, include cell group C andcell group D. The list of recommended resources may have been determinedby the team sourcing layer 114 to be potential replacements for cellgroup B based on a predicted performance calculation for cell group Cand cell group D surpassing cell group B.

Project Task 3 relates to presenting insurance claim coverage results toa responsible service provider. Project Task 3 is displayed in a thirdtask field 823, where the third task field 823 includes an option todisplay historical performance statistics for a cell group currentlyassigned to complete Project Task 3, an option to display predictedperformance statistics for a list of recommended resources determined bythe team sourcing layer 114 to be potential replacements to assign toProject Task 3, and an option to input performance rating for the cellgroup currently assigned to Project Task 3. The current cell groupassigned to Project Task 3 is shown to be cell group E. The third taskfield 823 also shows the option to input performance rating for thecurrent cell group E has been selected.

The methods, devices, processing, circuitry, and logic described abovemay be implemented in many different ways and in many differentcombinations of hardware and software. For example, all or parts of theimplementations may be circuitry that includes an instruction processor,such as a Central Processing Unit (CPU), microcontroller, or amicroprocessor; or as an Application Specific Integrated Circuit (ASIC),Programmable Logic Device (PLD), or Field Programmable Gate Array(FPGA); or as circuitry that includes discrete logic or other circuitcomponents, including analog circuit components, digital circuitcomponents or both; or any combination thereof. The circuitry mayinclude discrete interconnected hardware components or may be combinedon a single integrated circuit die, distributed among multipleintegrated circuit dies, or implemented in a Multiple Chip Module (MCM)of multiple integrated circuit dies in a common package, as examples.

Accordingly, the circuitry may store or access instructions forexecution, or may implement its functionality in hardware alone. Theinstructions may be stored in a tangible storage medium that is otherthan a transitory signal, such as a flash memory, a Random Access Memory(RAM), a Read Only Memory (ROM), an Erasable Programmable Read OnlyMemory (EPROM); or on a magnetic or optical disc, such as a Compact DiscRead Only Memory (CDROM), Hard Disk Drive (HDD), or other magnetic oroptical disk; or in or on another machine-readable medium. A product,such as a computer program product, may include a storage medium andinstructions stored in or on the medium, and the instructions whenexecuted by the circuitry in a device may cause the device to implementany of the processing described above or illustrated in the drawings.

The implementations may be distributed. For instance, the circuitry mayinclude multiple distinct system components, such as multiple processorsand memories, and may span multiple distributed processing systems.Parameters, databases, and other data structures may be separatelystored and controlled, may be incorporated into a single memory ordatabase, may be logically and physically organized in many differentways, and may be implemented in many different ways. In otherimplementations, any of the databases may be part of a single databasestructure, and, more generally, may be implemented logically orphysically in many different ways. Each of the databases defines tablesstoring records that the control instructions 222 read, write, delete,and modify to perform the processing noted herein. Exampleimplementations include linked lists, program variables, hash tables,arrays, records (e.g., database records), objects, and implicit storagemechanisms. Instructions may form parts (e.g., subroutines or other codesections) of a single program, may form multiple separate programs, maybe distributed across multiple memories and processors, and may beimplemented in many different ways. Example implementations includestand-alone programs, and as part of a library, such as a shared librarylike a Dynamic Link Library (DLL). The library, for example, may containshared data and one or more shared programs that include instructionsthat perform any of the processing described above or illustrated in thedrawings, when executed by the circuitry. Various implementations havebeen specifically described. However, many other implementations arealso possible.

What is claimed is:
 1. An enterprise server computer comprising: acommunication interface configured to: communicate with a computingresource, a project plan database, and a project performance database;and receive, from the computing resource, project parameterscorresponding to an enterprise project; project management circuitrycoupled to the communication interface, the project management circuitryconfigured to: receive, through the communication interface, the projectparameters; control the communication interface to retrieve, from theproject plan database, a project template corresponding to theenterprise project; control the communication interface to retrieve,from the project performance database, project performance data for aplurality of resources, the project performance data including arespective resource identifier and resource attributes for the pluralityof resources; determine, from the plurality of resources, a first cellgroup of resources for assigning a first project task included in theproject template; and determine, from the plurality of resources, asecond cell group of resources for assigning a second project taskincluded in the project template.
 2. The enterprise server computer ofclaim 1, wherein the project management circuitry is configured tocontrol the communication interface to retrieve, from the projectperformance database, the project performance data for the plurality ofresources based on the plurality of resourcing including at least oneresource attribute matching the project parameters.
 3. The enterpriseserver computer of claim 1, wherein the project template includes apredetermined set of distinct project tasks for accomplishing theenterprise project.
 4. The enterprise server computer of claim 1,wherein the first cell group is assigned the first project task adjacentin workflow to the second project task assigned to the second cell groupaccording to the project template.
 5. The enterprise server computer ofclaim 4, wherein the project management circuitry is further configuredto: determine a fragility score of the first cell group of resources forwhen a resource is removed from the first cell group; determine acomplexity score between the first cell group of resources and thesecond cell group of resources for handing off, to the second cellgroup, a work product from the first project task accomplished by thefirst cell group of resources; compare the fragility score to thecomplexity score; and assign the resource from the first cell group ofresources to the second cell group of resources when the complexityscore is greater than the fragility score.
 6. The enterprise servercomputer of claim 4, wherein the project management circuitry isconfigured to determine the first cell group of resources and the secondcell group of resources based on the project performance dataidentifying a previous work experience between the first cell group ofresources and the second cell group of resources.
 7. The enterpriseserver computer of claim 1, wherein the project management circuitry isfurther configured to: monitor a performance of the first cell group ofresources accomplishing the first project task; generate a firstperformance score based on the monitored performance of the first cellgroup of resources accomplishing the first project task; and upload, tothe project performance database, the first performance score for thefirst cell group of resources.
 8. The enterprise server computer ofclaim 7, wherein the project template includes a predetermined set ofdistinct project tasks for accomplishing the enterprise project; andwherein the project management circuitry is further configured to: inputthe first performance score to a machine learning strategy to optimizethe predetermined set of distinct project tasks included in the projecttemplate.
 9. A method for managing a crowd sourced project, the methodcomprising: receiving, from a computing resource, project parameterscorresponding to an enterprise project; controlling a communicationinterface to retrieve, from a project plan database, a project templatecorresponding to the enterprise project; controlling the communicationinterface to retrieve, from a project performance database, projectperformance data for a plurality of resources, the project performancedata including a respective resource identifier and resource attributesfor the plurality of resources; determining, from the plurality ofresources, a first cell group of resources for assigning a first projecttask included in the project template; and determining, from theplurality of resources, a second cell group of resources for assigning asecond project task included in the project template.
 10. The method ofclaim 9, wherein controlling the communication interface to retrieve,from the project performance database, the project performance data forthe plurality of resources is based on the plurality of resourcesincluding at least one resource attribute matching the projectparameters.
 11. The method of claim 9, wherein the project templateincludes a predetermined set of distinct project tasks for accomplishingthe enterprise project.
 12. The method of claim 9, wherein determiningthe first cell group comprises assigning the first project task adjacentin workflow to the second project task assigned to the second cell groupaccording to the project template.
 13. The method of claim 12, furthercomprising: determining a fragility score of the first cell group ofresources for when a resource is removed from the first cell group;determining a complexity score between the first cell group of resourcesand the second cell group of resources for handing off, to the secondcell group, a work product from the first project task accomplished bythe first cell group of resources; comparing the fragility score to thecomplexity score; and assigning the resource from the first cell groupof resources to the second cell group of resources when the complexityscore is greater than the fragility score.
 14. The method of claim 12,wherein determining the first cell group of resources and the secondcell group of resources is based on the project performance dataidentifying a previous work experience between the first cell group ofresources and the second cell group of resources.
 15. The method ofclaim 9, further comprising: monitoring a performance of the first cellgroup of resources accomplishing the first project task; generating afirst performance score based on the monitored performance of the firstcell group of resources accomplishing the first project task; anduploading, to the project performance database, the first performancescore for the first cell group of resources.
 16. The method of claim 15,wherein the project template includes a predetermined set of distinctproject tasks for accomplishing the enterprise project; and the methodfurther comprising: inputting the first performance score to a machinelearning strategy to optimize the predetermined set of distinct projecttasks included in the project template.
 17. An enterprise servercomputer comprising: a communication interface configured to:communicate with a computing resource, a project plan database, and aproject performance database; and receive, from the computing resource,project parameters corresponding to an enterprise project; projectmanagement circuitry coupled to the communication interface, the projectmanagement circuitry configured to: receive, through the communicationinterface, the project parameters; determine the project plan databasedoes not store a project template corresponding to the enterpriseproject; generate a workflow including a plurality of project tasks forthe enterprise project based on the project parameters; control thecommunication interface to retrieve, from the project performancedatabase, project performance data for a plurality of resources, theproject performance data including a respective resource identifier andresource attributes for the plurality of resources; determine, from theplurality of resources, a first cell group of resources for assigning afirst project task included in the workflow; and determine, from theplurality of resources, a second cell group of resources for assigning asecond project task included in the workflow.
 18. The enterprise serverof claim 17, wherein the first cell group is assigned the first projecttask adjacent in workflow to the second project task assigned to thesecond cell group according to the project template.
 19. The enterpriseserver of claim 18, wherein the project management circuitry is furtherconfigured to: determine a fragility score of the first cell group ofresources for when a resource is removed from the first cell group;determine a complexity score between the first cell group of resourcesand the second cell group of resources for handing off, to the secondcell group, a work product from the first project task accomplished bythe first cell group of resources; compare the fragility score to thecomplexity score; and assign the resource from the first cell group ofresources to the second cell group of resources when the complexityscore is greater than the fragility score.
 20. The enterprise servercomputer of claim 17, wherein the project management circuitry isfurther configured to: monitor a performance of the first cell group ofresources accomplishing the first project task; generate a firstperformance score based on the monitored performance of the first cellgroup of resources accomplishing the first project task; and upload, tothe project performance database, the first performance score for thefirst cell group of resources.